package ar.uade.edu.fain.ad.client.swing.mapping;

import ar.uade.edu.fain.ad.client.swing.util.xml.RemitoXml;
import ar.uade.edu.fain.ad.client.swing.util.xml.RemitoXml.Items.Item;
import ar.uade.edu.fain.ad.common.transfer.ItemRemitoVO;
import ar.uade.edu.fain.ad.common.transfer.OrdenCompraVO;
import ar.uade.edu.fain.ad.common.transfer.ProductoVO;
import ar.uade.edu.fain.ad.common.transfer.RemitoVO;

public class RemitoMapper {

	public RemitoMapper() {
		super();
	}

	public RemitoVO mapear(final RemitoXml xml) {
		final RemitoVO vo = new RemitoVO();
		vo.setId(xml.getId().longValue());
		for (Item itemXml : xml.getItems().getItem()) {
			final ItemRemitoVO itemRemitoVO = new ItemRemitoVO();
			itemRemitoVO.setCantidad(itemXml.getCantidad().intValue());
			itemRemitoVO.setFechaCaducidad(itemXml.getFechaVencimiento()
					.toGregorianCalendar().getTime());
			itemRemitoVO.setOrdenCompra(new OrdenCompraVO());
			itemRemitoVO.getOrdenCompra().setId(
					itemXml.getOrdenCompra().getId().longValue());
			itemRemitoVO.setProducto(new ProductoVO());
			itemRemitoVO.getProducto().setId(
					itemXml.getProducto().getId().longValue());
			vo.getItems().add(itemRemitoVO);
		}
		return vo;
	}
}
